<?php

class Users extends Public_Controller
{
	
	public function __construct()
	{
		parent::__construct();
	}
	
	public function register()
	{
		if(is_login())
		{
			set_notify('error','คุณไม่สามารถเข้าถึงข้อมูลในส่วนนี้ค่ะ');
		}
		else
		{
			if($_POST)
			{
				$user = new User;
				$user->from_array($_POST);
				$user->save();
				if(login($_POST['username'],$_POST['password']))
				{
					set_notify('success','ยินดีต้อนรับเข้าสู่ระบบค่ะ');
					redirect('home');
				}
				else
				{
					set_notify('error','เกิดความผิดพลาดในการสมัครสมาชิก กรุณาลองใหม่อีกครั้งค่ะ');
					redirect('register');
				}
			}
			$this->template->build('register');
		}
		
	}
	
	public function forgot()
	{
		$this->template->build('forgot');
	}
	
	public function check_username()
	{
		$user = new User;
		$user->get_by_username($_GET['username']);
		echo ($user->exists())?'false':'true';
	}
	
	public function check_display()
	{
		$user = new User;
		$user->get_by_display($_GET['display']);
		echo ($user->exists())?'false':'true';
	}
	
	public function login_box()
	{
		if(is_login())
		{
			$this->load->view('_member.php');
		}
		else
		{
			$this->load->view('_login.php');
		}
	}
	
	public function index()
	{
		if(is_login('Administrator'))
		{
			$data['users'] = new User;
			$data['users']->get_page();
			$this->template->build('index',$data);
		}
		else
		{
			set_notify('error','คุณไม่สามารถเข้าถึงข้อมูลในส่วนนี้ค่ะ');
			redirect('home');
		}
	}
	
	public function form($id = NULL)
	{	
		if(is_login('Administrator'))
		{
			$data['user'] = new User($id);
			$this->template->build('form',$data);
		}
		else
		{
			set_notify('error','คุณไม่สามารถเข้าถึงข้อมูลในส่วนนี้ค่ะ');
			redirect('home');
		}
	}
	
	public function save($id = NULL)
	{
		if(is_login('Administrator'))
		{
			if($_POST)
			{
				$user = new User($id);
				$user->from_array($_POST);
				$user->save();
				set_notify('success','บันทึกข้อมูลเรียบร้อยค่ะ');	
			}
			redirect('users');
		}
		else
		{
			set_notify('error','คุณไม่สามารถเข้าถึงข้อมูลในส่วนนี้ค่ะ');
			redirect('home');
		}
	}
	
	public function delete($id)
	{
		if(is_login('Administrator'))
		{
			if($id)
			{
				$user = new User($id);
				$user->delete();	
				set_notify('success','ลบข้อมูลเรียบร้อยค่ะ');	
			}
			redirect('users');
		}
		else
		{
			set_notify('error','คุณไม่สามารถเข้าถึงข้อมูลในส่วนนี้ค่ะ');
			redirect('home');
		}
	}
}

?>